package Model;

import java.awt.Point;
import java.util.Map;

/**
 * A Maze in any given puzzle game
 * -Created Class(Feb 2,2011)
 * Samual Martelli
 * </pre>
 */
public class Maze {

	//global variables for map values
	protected static final int ITEM_SPACE = 0;
	protected static final int PORTAL_SPACE = 1;
	protected static final int WALL_SPACE = 2;
	protected static final int HEDGE_SPACE = 3;
	protected static final int RAT_TUNNEL_SPACE = 4;
	protected static final int GAME_CHARACTER_SPACE = 5;
	protected static final int EXIT_SPACE = 6; // for the escape mouseland game
	protected static final int EMPTY_SPACE = 7;
	
	private Map<Point,Integer>  gameMap;
	private int mazeItems; //keeps track of the total number of items in the maze
	
	//generates the gamemap based on the size
	//(eg the map has Point from (0,0) to (size,size))
	public Maze(int size){
		
	}
	
	public void reset(){
		
	}
	
	public void updateMaze(){
		
	}

	//Good for loading in saved gamemaps
	public void setGameMap(Map<Point,Integer> gameMap) {
		this.gameMap = gameMap;
	}

	public Map<Point,Integer> getGameMap() {
		return gameMap;
	}


	
	//go through the map counting the number of item spaces
	//Note: character spaces are assumed to have already used the item on them
	private int getItemsLeft(){
		return mazeItems;
	}
	//uses the map to get the value
	public int getMazeItem(Point itemLocation) {
		return gameMap.get(itemLocation);
	}
}
